package com.power.project.model.bo;


import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.util.List;

@Data
public class ProjectUserSaveBO {

    /**
     * 项目id
     */
    @NotNull
    @ApiModelProperty(value = "项目id")
    private Integer projectId;

    /**
     * 设置为项目人员的用户id列表
     */
    @ApiModelProperty(value = "参与项目人员userid")
    private List<String> userIds;

    @ApiModelProperty("管理者的userid")
    private List<String> mgruserids;

    @NotNull
    @ApiModelProperty(value = "租户id")
    private String tenantid;

    /**
     * 确保所有管理者userid都在项目关联人员userid列表中。
     *
     * @param userIds 项目关联人员的userid列表
     * @param mgrUserIds 管理者的userid列表
     * @return 如果mgrUserIds中的所有元素都在userIds中，则返回true，否则返回false
     */
    public boolean checkMGRInUsers(List<String> userIds, List<String> mgrUserIds) {
        if (mgrUserIds == null || mgrUserIds.isEmpty() || (userIds != null && userIds.containsAll(mgrUserIds))) {
            return true;
        }
        return false;
    }
}
